Multimedia editing applications are used to create various types of multimedia presentations containing multimedia objects. A multimedia object can be a video object, an audio object, an image object, or a combination thereof, which has a temporal aspect in that its content is experienced over time. A typical multimedia presentation may contain multiple different video and/or audio elements. The editing applications typically provide support to create and modify the video and audio elements, and combine such elements into sequences that together form the multimedia presentation.
The user interfaces of conventional editing applications use a direct manipulation paradigm, in which the user operates a mouse or other pointing device to select graphical representations of the multimedia objects, and then select icons, menu items or keystrokes to perform a desired function on the selected objects. For example, a user may select a video object, and select an icon to change the entry point of the video object (the time at which the video object starts) by dragging an entry marker on a graphical timing panel. As another example, the user may start the playback of the multimedia object by clicking on an icon representing a play function, or may “rewind” the object by clicking on an icon associated with a reverse play function. In this type of icon-based control paradigm, three separate steps are required. First, the user must know exactly where on the screen the icon for the desired function appears, second, the user then must move the cursor to this location, and third the user must select, click or drag the icon to achieve the desired functionality. These steps take time and attention away from the user's focus on the particular aspect of the multimedia object being edited.
Another problem with this approach is that each icon takes up screen space and thus the user interface of the application tends to get cluttered up with multiple tool bars, menus, icon palettes and the like in order to present the icons for all of the available functions. For functions that are used frequently, requiring the user to repeatedly access an icon on the screen only serves to slow down the user's work instead of streamlining it. Complex keystroke combinations (e.g., “CONTROL-ALT-P” for “play”) are thus used for common functions, but this requires the user to memorize a typically arbitrary mapping of key combinations to functions, and further may require the user to release control of their pointing device in order to access the key board to generate the keystroke. After the keystroke is pressed, the user then must access the pointing device again. Of course, some keystroke combinations may be done with one hand on the keyboard while the other hand retains the pointing device. However, this approach severely limits the number of available keystroke combinations to those that can be pressed with one hand, and further requires a high degrees of dexterity in the user's non-dominant hand, since most users use their dominant hand (e.g., right hand) to control the pointing device, and leave their non-dominant hand on the keyboard. The net result in these situations that the user's attention is directed away from the object to the particulars of the device interface, and thus reduces the user's efficiency.
Gestures have been previously used for entry of limited command in a tablet based computer. In most cases, the gestures are essentially alphabetical characters, such as “G” for the function “goto,” or “f” for the function “Find,” or “s” for the function “save,” and thereby merely represent the word for the function itself, essentially providing an abbreviation of the word. While arbitrary graphical symbols are sometimes used, they do not provide a comprehensive set of useful visual mnemonics.
Accordingly, it is desirable to provide a multimedia editing application that can be controlled by various gestures that have visually mnemonic forms.